package edu.utexas.mapreduce;

/**
 * Interface application mapper must implement to be loaded by the 
 * framework.  One instance of the Mapper class will be created
 * per map worker thread.  The same Mapper instance may process several
 * input splits, which will appear as a single key/value stream.
 */
public interface Mapper {
	/**
	 * Entry point to application mapper function.
	 * @param key Key from the input data split
	 * @param value Value from the input data split
	 * @param result OutputWriter instance used by the application
	 * object to write key/value pairs.
	 */
	void map(String key, String value, OutputWriter result);
}
